Personal computing devices, such as personal digital assistants (PDAs), multimedia players, cameras, smartphones, and headsets are becoming increasingly more prevalent and useful in everyday activities. For example, persons are more frequently carrying these computing devices on their person as they go about their daily activities. Often, such devices are most useful when they interact with other devices via some communication media, such as wireless communications. There are many common everyday scenarios in which two devices need to interact with one another. One common case is where both devices are controlled by a single user, such as where a user operates a Bluetooth headset and a cell phone to perform hands-free calling or where a user operates a PDA and a wireless printer to print documents remotely. Another case is where individual users initiate communication between their respective computing devices, such as where two users establish a connection between their respective PDAs to wirelessly share electronic data. Thus, an aspect of the increased usefulness in personal computing is spontaneous device association.
Spontaneous associations between computing devices are preferable given the often impromptu circumstances in which the user or users operate the devices, such as those circumstances exemplified above. In addition, because spontaneous interactions are likely to occur in untrustworthy environments, securing these interactions is important. An example of such an untrustworthy environment is the case in which two colleagues meet at a conference and transfer an electronic document containing sensitive business information from one colleague's PDA to the other colleague's laptop computer. If the transfer is performed wirelessly and in the absence of appropriate security measures, a third party, such as a business rival, could intercept the sensitive information. Thus, some degree of security is desired to prevent a third party from eavesdropping on a communication.
Traditional cryptographic means of establishing secure communication channels, such as authenticated key exchange protocols, are generally unsuitable for secure device pairing. These traditional cryptographic means are unsuitable because mutually unfamiliar devices have no prior context and no common point of trust: no on-line Trusted Third Party (TTP), no off-line Certification Authority (CA), no Public Key Infrastructure (PKI), and no common secrets. Although protocols exist to facilitate exchange of encryption keys between computing devices, security breaches may still result from the inability to establish secure, authenticated communication channels between the devices.
In one type of security breach known as Man-in-the-Middle (MiTM), two users attempt to communicate directly with each other. However, information intended to be exchanged between the users is instead intercepted by a third party. The third party emulates each user from the perspective of the other so that the two users are unaware of the presence of the third party.
Another type of security breach occurs in environments having multiple computing devices with spontaneous device association capability. In this security breach, a pair of devices attempts to associate with each other near in time to another pair of devices similarly attempting to associate with each other. It is possible that a member of each pair becomes mistakenly associated with a member of the other pair.
To address these security problems, some computing devices implement auxiliary or out-of-band (OOB) channels, which are both perceivable and manageable by the user or users who operate the devices. An OOB channel takes advantage of human sensory capabilities to authenticate human-imperceptible information exchanged over a wireless channel. The OOB channel is essentially a physically constrained channel, meaning that only devices in a certain physical context can transmit or receive a message via the channel. OOB channels are realized using human-perceptible senses such as audio, visual, and tactile.
Existing implementations of OOB channels suffer from a number of issues. For instance, because human involvement is required to authenticate an association, device usability must be simple and efficient to avoid deterring users from overly complex authentication methods. Moreover, because the OOB channel is typically a low bandwidth channel, the information transmitted to enable the authentication must be minimized. Also, many computing devices capable of forming associations have limited hardware facilities and/or user interfaces to support complex authentication methods.
Therefore, an improved authentication technique is needed that simplifies user authentication, efficiently transmits minimal information to enable the authentication, and utilizes universal and/or inexpensive and readily available hardware facilities and user interfaces.